//护卫队
#include <iostream>
#include <iomanip>
using namespace std;
const int MAXN=1000;
unsigned int zai,juli,n;
unsigned int w[MAXN+1],s[MAXN+1];
double mint[MAXN+1];

int main(){
    cin>>zai>>juli>>n;
    double maxt=0;
    for(int i=1;i<=n;i++) {
        cin>>w[i]>>s[i];
        maxt+=juli*1.0/s[i]*60;
    }
    //初始化
    for(int i=1;i<=n;i++) mint[i]=maxt;
    mint[1]=juli*1.0/s[1]*60;
    //开始动规
    for(int i=2;i<=n;i++){
        mint[i]=mint[i-1]+juli*1.0/s[i]*60;
        unsigned mins=s[i];//i到j之间的最慢速度
        unsigned sumw=w[i];
        for(int j=i-1;j>=1;j--){
            if (mins>s[j]) mins=s[j];
            sumw+=w[j];
            if (sumw<=zai){
                if (mint[i]>mint[j-1]+juli*1.0/mins*60)
                    mint[i]=mint[j-1]+juli*1.0/mins*60;
            }else break;
        }
    }
    cout<<fixed<<setprecision(1)<<mint[n];
}
